package seguranca.model;
// Generated Oct 23, 2014 7:15:00 PM by Hibernate Tools 4.3.1


import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * TbPassaporteDiplomatico generated by hbm2java
 */
@Entity
@Table(name="tb_passaporte_diplomatico"
    ,catalog="bd_prototipo"
)
public class TbPassaporteDiplomatico  implements java.io.Serializable {


     private Integer idtPassaporteDiplomatico;
     private TbPessoa tbPessoa;
     private int numPassaporteDiplomatico;
     private Date dtaExpedicao;
     private Date dtaValidade;
     private Set<TaDescricao> taDescricaos = new HashSet<TaDescricao>(0);

    public TbPassaporteDiplomatico() {
    }

	
    public TbPassaporteDiplomatico(TbPessoa tbPessoa, int numPassaporteDiplomatico, Date dtaExpedicao, Date dtaValidade) {
        this.tbPessoa = tbPessoa;
        this.numPassaporteDiplomatico = numPassaporteDiplomatico;
        this.dtaExpedicao = dtaExpedicao;
        this.dtaValidade = dtaValidade;
    }
    public TbPassaporteDiplomatico(TbPessoa tbPessoa, int numPassaporteDiplomatico, Date dtaExpedicao, Date dtaValidade, Set<TaDescricao> taDescricaos) {
       this.tbPessoa = tbPessoa;
       this.numPassaporteDiplomatico = numPassaporteDiplomatico;
       this.dtaExpedicao = dtaExpedicao;
       this.dtaValidade = dtaValidade;
       this.taDescricaos = taDescricaos;
    }
   
     @Id @GeneratedValue(strategy=IDENTITY)

    
    @Column(name="idt_passaporte_diplomatico", unique=true, nullable=false)
    public Integer getIdtPassaporteDiplomatico() {
        return this.idtPassaporteDiplomatico;
    }
    
    public void setIdtPassaporteDiplomatico(Integer idtPassaporteDiplomatico) {
        this.idtPassaporteDiplomatico = idtPassaporteDiplomatico;
    }

@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="cod_pessoa", nullable=false)
    public TbPessoa getTbPessoa() {
        return this.tbPessoa;
    }
    
    public void setTbPessoa(TbPessoa tbPessoa) {
        this.tbPessoa = tbPessoa;
    }

    
    @Column(name="num_passaporte_diplomatico", nullable=false)
    public int getNumPassaporteDiplomatico() {
        return this.numPassaporteDiplomatico;
    }
    
    public void setNumPassaporteDiplomatico(int numPassaporteDiplomatico) {
        this.numPassaporteDiplomatico = numPassaporteDiplomatico;
    }

    @Temporal(TemporalType.DATE)
    @Column(name="dta_expedicao", nullable=false, length=10)
    public Date getDtaExpedicao() {
        return this.dtaExpedicao;
    }
    
    public void setDtaExpedicao(Date dtaExpedicao) {
        this.dtaExpedicao = dtaExpedicao;
    }

    @Temporal(TemporalType.DATE)
    @Column(name="dta_validade", nullable=false, length=10)
    public Date getDtaValidade() {
        return this.dtaValidade;
    }
    
    public void setDtaValidade(Date dtaValidade) {
        this.dtaValidade = dtaValidade;
    }

@OneToMany(fetch=FetchType.LAZY, mappedBy="tbPassaporteDiplomatico")
    public Set<TaDescricao> getTaDescricaos() {
        return this.taDescricaos;
    }
    
    public void setTaDescricaos(Set<TaDescricao> taDescricaos) {
        this.taDescricaos = taDescricaos;
    }




}


